The present invention relates to data communication systems, data transmission apparatuses, data receiving apparatuses, data communication methods, data transmission methods, received-data processing methods, and computer programs and, more particularly, to a data communication system, a data transmission apparatus, a data receiving apparatus, a data communication method, a data transmission method, a received-data processing method, and a computer program which assign a degree of priority to encoded image information and transmit and receive the encoded image information.
Various types of data transfer have been performed through various communication media, such as the Internet. Recently, image data, especially moving-image data, has been increasingly transferred through networks. In general, image data, especially moving-image data, is encoded (compressed) at a transmission side to reduce the amount of data, is sent to a network, and the received encoded signal is decoded (decompressed) at a receiving side.
One of the most known image compression methods is the Moving Pictures Experts Group (MPEG) compression technology. These days, technical developments have been actively performed which relate to a system in which an MPEG stream is stored in IP packets conforming to the Internet Protocol (IP), transmitted on the Internet, and received by communication terminals, such as PCs, PDAs, and portable telephones, or to an image-data transfer method in such a system.
It is necessary to assume that data transfer is performed with receiving terminals having different performance, in video on demand, in streaming distribution of live images, and in real-time communications in video conferences and video phones. For example, data transmitted from one information transmission source is received by a receiving terminal having a low-resolution display and a low-performance CPU, such as a portable telephone, and displayed on the display, and is also received by a receiving terminal having a high-resolution monitor and a high-performance CPU, such as a desk-top personal computer, and displayed. Data transmission is performed in this way to various receiving terminals having difference processing performance. As a method for allowing such various receiving terminals to execute receiving processing and display processing according to their processing performance, a method for hierarchically encoding transfer data has been examined, which leads to a communication system using scalable encoding.
In scalable-encoded data distribution, for example, encoded data to be processed only by a receiving terminal having a high-resolution display and encoded data to be processed in common by both of a receiving terminal having a high-resolution display and a receiving terminal having a low-resolution display are packetized in a distinguishable manner and distributed, and the receiving terminals select corresponding data and process it.
As compression and decompression methods which allow scalable encoding, MPEG-4 and JPEG-2000 can be, for example, taken. MPEG-4 will include a fine granuality scalability technology and it is said that distribution is hierarchically possible at a low bit rate to a high bit rate with this scalable encoding technology. JPEG-2000 is based on the wavelet transform, and makes the best use of the features of the wavelet transform to be able to perform packetization based on spatial resolutions or to be able to perform hierarchical packetization based on image quality. Motion JPEG-2000 (part 3) can handle moving images as well as still images, and can save scalable data in a file format.
In conventional data distribution systems, it is necessary for a transmission side to generate data having different formats corresponding to the performance of data receiving terminals or to prepare different data at the transmission rates of the data receiving terminals. When the above-described scalable encoding is applied, data distribution is made possible at the same time from one file to terminals having different performance.
When data to be distributed is image data, for example, since real-time response is required, the user datagram protocol (UDP) is used in many cases for communication on the Internet. In addition, the real-time transport protocol (RTP) is used in the layer above the layer where UDP is used, and a format defined for each application, that is, each encoding method, is used. When UDP is used, since a packet is not regenerated, unlike transmission control protocol (TCP)/IP, a packet loss may occur due to network congestion.
A discrete-cosine-transform-(DCT)-based technology has been proposed for a specific data distribution case to which scalable encoding is applied. In this technology, DCT processing is applied to distribution information, such as image data, to generate layers with a high-frequency signal and a low-frequency signal being distinguished, packets are generated in a high-frequency layer and a low-frequency layer, and data distribution is executed.
When the proposed data distribution in which DCT is used for the high-frequency and low-frequency layer process is executed, however, receiving terminals can execute packet processing according to levels of priority for a high-frequency signal and a low-frequency signal, determined, for example, by the performance of the terminals. There are only two levels of priority, one for a high-frequency signal and the other for a low-frequency signal. In contrast, the bandwidths of network fluctuate in various ways. Therefore, it is difficult to say that only the processing based on two levels of priority is sufficient for handling various types of fluctuations of the bandwidths of networks. In addition, the DCT-based scalable technology is not sufficient for allowing terminals having different resolutions, for example, receiving terminals having a large resolution difference such as a portable telephone and a personal computer, to execute the most appropriate image display processing according to the performance of the terminals.
Further, since encoding is executed by using-inter-frame difference information in MPEG, when a packet loss occurs on the Internet, for example, block noise unique to MPEG occurs across a number of frames. The RTP format is defined for Motion JPEG in the IETF document, RFC 2435. The RTP format is not defined for JPEG-2000 video streams. Although it is better to apply a different process for an error and a packet loss to each layer with a packet loss being taken into account, there was no such packetizing method.